<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <script>

        //  对象 是  js的一个复杂数据类型  Object  
        //  万物皆对象   
        //  是一个真实的个例 

        // 它是一个承载数据的盒子 
        // 它是一个无序的数据集合 
        // 它是一个键值对的集合   姓名:张三   姓名 键  张三  值 



        // 创建对象  

        // 第一种  字面量(直接显示的数据)的方式创建  
        // 语法: 
        //      创建一个空对象  var 对象名 = {};
        //      创建一个有数据的对象  var 对象名 = {键:值,键:值,键:值,...,键:值}
        // 键:值  多个键值对之间  用,隔开  


        // 第二种  内置构造函数 
        //     创建一个空对象  
        //     var 对象名 = new Object();  // 注意 O大写  


        // 对象的键(key )要求:
        // 推荐使用符合标识符 命名规则和规范的名字
        // 如果符合规范的名字  可以加单引号 也可以不加 
        // 可以使用纯数字作为键的名字  
        //  当使用纯数字作为键的时候 会排在最前面 
        // 也可以使用任何特殊符号作为键的名字 
        //  如果使用特殊符号  必须加单引号



        // 字面量 

        // var person = {};
        // console.log(person,typeof person);
        // alert(person);
        // document.write(person);
        // 输出语句  如果 想输出复杂数据类型  只能用console.log()
        // 如果输出超文本 用 document.write
        // 基本数据类型  alert  document.write 都可以 


        
        // 创建带数据的对象 
        // var obj = {
        //     'name':'jack',
        //     age:18   
        // }

        // 最后一个键值对后边不用加,

        // var obj2 = {
        //     name:'张三',
        //     123:456,
        //     user_email:'gaohj@126.com',
        //     $aaa:100,
        //     'class-room':'h5-2303',
        //     'haha#%^':'666',
        //     gender:'男'
        // }


        // console.log(obj2);


        // 内置构造函数创建 

        // var person = new Object();
        // console.log(person);

        // 只能先创建空对象  后边慢慢补充内容 


        var person = new Object();
        console.log(person);

    </script>
    
</body>
</html>